/* 入口函数 */
$(function () {
    /* 需求一:绑定a链接的点击隐藏事件 */
    $('#loginBox a').on('click',function(){
        /* 点击登录区域a链接,隐藏登录区域,显示注册区域 */
        $('#loginBox').hide()
        $('#regBox').show()
    })
    $('#regBox a').on('click',function(){
        /* 点击注册区域a链接,隐藏注册区域,显示登录区域 */
        $('#loginBox').show()
        $('#regBox').hide()
    })

    /* 需求二:自定义校验规则 */
    let form=layui.form;
    /* verify()定义校验规则,参数一定是一个对象 */
    form.verify({
        /* 属性是校验名称,值是校验规则 */
        username:[/^[a-zA-Z0-9]{1,10}$/,
          '用户名必须1到10位数字和字母'],
        /* 密码的校验规则 */
        pwd:[/^[a-zA-Z0-9]{6,15}$/,
        '密码长度必须是6-15位的非空字符串'],
        /* 确认密码的规则 */
        rePwd:function(value){
            /* value就是你给哪个标签添加校验规则,这个标签的值就赋值给这个value */
            let pwd=$('#regBox input[name=password]').val()
            /* 如果两次值不一样就报错 */
            if(pwd!==value){
                return '两次输入密码不一致,请重新输入!'
            }
        }

    })

    /* 需求三:注册功能 */
    let layer=layui.layer
    $('#formReg').on('submit',function(e){
        e.preventDefault()
        axios({
            method:'POST',
            url:'/api/reguser',
            data:$(this).serialize()
        }).then(({data:res})=>{
            /* console.log(res.data); */
            if(res.status !==0){
                return layer.msg(res.message)
            }
            layer.msg('恭喜您注册成功')
            /* 切换到登录模块 */
            $('#regBox a').click()
            /* 清空表单 */
            $('#formReg')[0].reset()
        })
    })

    /* 需求四:登录功能 */
    $('#formLogin').on('submit',function(e){
        e.preventDefault()
        axios({
            method:'POST',
            url:'/api/login',
            data:$(this).serialize()
        }).then(({data:res})=>{
            /* console.log(res.data); */
            if(res.status !==0){
                return layer.msg(res.message)
            }
            layer.msg('恭喜您登录成功')
            /* 成功保存token */
            localStorage.setItem('token',res.token)
            /* 页面跳转到index.html */
            location.href='/index.html'
        })
    })
})
